home *** CD-ROM | disk | FTP | other *** search
/ HyperLib 1997 Winter - Disc 1 / HYPERLIB-1997-Winter-CD1.ISO.7z / HYPERLIB-1997-Winter-CD1.ISO / オンラインウェア / UTIL / YAPI.1.0.sit / YAPI 1.0 ƒ / About YAPI next >
Text File  |  1996-10-30  |  13KB  |  263 lines

  1.  
  2. YAPI v1.0
  3. by Eric H. Cloninger
  4. ericc@pobox.com
  5. http://www.pobox.com/~ericc
  6.  
  7. Contents.
  8. 1. What is YAPI?
  9. 2. YAPI Requirements.
  10. 3. Who Would Use YAPI?
  11. 4. Using YAPI.
  12. 5. Menu Commands.
  13. 6. YAPI Preferences.
  14. 7. Why Another Process Manager Application?
  15. 8. Design Decisions (or not).
  16. 9. Features.
  17. 10. Future Features.
  18. 11. Known Bugs.
  19. 12. Legalese, etc.
  20.  
  21. 1. What is YAPI?
  22.  
  23. YAPI stands for Yet Another Process Information application. It shows a list of all processes and allows the user to view, bring forward, or stop a process from the list. The application is a FAT binary.
  24.  
  25. 2. YAPI Requirements.
  26.  
  27. YAPI requires a 68020 or better machine and System 7 or higher. It needs 800K of memory to run.
  28.  
  29. 3. Who Would Use YAPI?
  30.  
  31. YAPI is not an application for novices or people who are not 100% sure of what they are doing. Because it allows the user to stop applications, it could have potentially dangerous side effects. Software developers and people who like to tinker with their machine might find it useful.
  32.  
  33. The best rule is メIf youユre not really sure what all this means, throw this application away and forget you saw itモ.
  34.  
  35. 4. Using YAPI.
  36.  
  37. The YAPI main window, shown in Figure 1, displays a list of all processes known to the Process Manager. As long as the application is running, this window will be shown. The processes may be normal applications, such as the CodeWarrior IDE, or background applications, such as ObiWan. If a process runs in the background, the name of the process is italicized. If a process has less than 10% of its memory left, the name of the process is shown in red.
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50. Figure 1. YAPI main window.
  51.  
  52. Along the top of the list are two icons. The icon on the left side, an envelope, will instruct Internet Config to launch the E-Mail application and send it an Apple Event to create a blank E-Mail document to me. The icon on the right, a book, will instruct Internet Config to launch the Web Browser application and show my home page. If Internet Config is not installed, these icons are not shown. 
  53.  
  54. Moving the mouse over an item in any of the windows will display a rectangle with text describing what the item does. This feature is called メHintsモ and the user can enable or disable this feature at any time by pressing the メHelpモ key. 
  55.  
  56. Selecting an item in the list and pressing □-I will display the process information window for the process, as shown in Figure 2. 
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84. Figure 2. Process information window.
  85.  
  86. The clickable arrowhead in the process information window allows the user to view or hide static information about a process, such as the location of the file, the Finder メmodeモ flags, and the process serial number. Once the user has viewed this information, there is little need to view it again, so pressing the arrowhead on the left side of the window will メcollapseモ the static information, as shown in Figure 3, displaying only the dynamic information. Pressing it again will expand the window and show all the information.
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95. Figure 3. メCollapsedモ process information window.
  96.  
  97. If an information window is already open for a process, attempting to open a second window will only bring the existing window forward.
  98.  
  99. 5. Menu Commands
  100.  
  101. Apple Menu.
  102.  
  103. About YAPI. Displays the application about box.
  104.  
  105. File Menu.
  106.  
  107. Close. Close the frontmost window. This will not operate on the main window.
  108.  
  109. Quit. Quit the application.
  110.  
  111. Edit Menu.
  112.  
  113. The メUndoモ, メCutモ, メCopyモ, メPasteモ, メClearモ, and メSelect Allモ menu items are included, but they are not supported at this time.
  114.  
  115. Preferences. This menu item brings up the preferences dialog, described in greater detail in the next section.
  116.  
  117. Process menu.
  118.  
  119. Open All Processes. This command opens a process information window for every known process.
  120.  
  121. These items operate on one or more processes. If the main window is frontmost, the operation occurs on every process selected in the list. If a process information window is frontmost, the operation occurs on the process described in that window. 
  122.  
  123. Information. This command will display a process information window about the selected process or processes.
  124.  
  125. Stop. This command will attempt to stop an process. Before the user can stop a process, they must confirm their intentions by dismissing the dialog shown in Figure 4.
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139. Figure 4. Stop process confirmation dialog.
  140.  
  141. Bring Forward. If the process will allow it, this command will bring the selected process to the foreground. It is not guaranteed to work, since a process may not choose to come forward.
  142.  
  143. Windows Menu.
  144.  
  145. Previous. Bring the previous process information window forward.
  146.  
  147. Previous. Bring the next process information window forward.
  148.  
  149. Close All Info Windows. Closes all process information windows, but not the main window.
  150.  
  151. YAPI. This command brings the main window foward.
  152.  
  153. The other commands in the Windows menu will bring specific information windows forward.
  154.  
  155. 6. YAPI Preferences
  156.  
  157. YAPI is a highly configurable application. The preferences dialog, shown in Figure 5, allows the user to change many aspects of the application.
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177. Figure 5. YAPI preferences dialog.
  178.  
  179. The items that the user can change and their uses are:
  180.  
  181. Update process information. Allows the user to change how often the information windows and the main window are updated. This value is in 1/60ths of a second, a measurement called "Ticks" by software developers. If the user doesnユt want to waste many CPU cycles updating the windows, then they should set this value reasonably high (i.e. over 300). If they wish to monitor as much as possible, then they should set this value to something reasonably low (1 to 20).
  182.  
  183. Show Hints. Hints are those words that pop up for a few seconds when the mouse is moved over something. Use this check box to enable or disable them. NOTE: hints can also be enabled and disabled at any time by pressing the "Help" key.
  184.  
  185. Confirm メKillsモ with user. OK, this is one of those ethical questions. Do you sell handguns to idiots? This item is the software equivalent of giving someone a handgun with no safety. If the user knows what they are doing, this is a really useful feature, because it avoids the pesky confirmation dialog when stopping processes. If the user has a lot of processes to stop, it is _really_ useful. But, if the user is an idiot, they will do something stupid with this feature. Donユt change this if you donユt know what you are doing.
  186.  
  187. Stop processes withノ This is yet another ethical question. Do you leave a loaded handgun in the house? This is the software equivalent of a handgun loaded with jacketed hollowpoints in a household of children. Combined with the previous item, they make a deadly (or useful) combination. The typical way to stop a process is to send it a special message called an Apple Event, which allows an application to save its documents and other information. Sometimes applications ignore Apple Eventsムapplications that were written prior to System 7 and applications that have logic errors and are stuck in some irrecoverable state. Selecting the メEvil Kill Process Trickモ will cause the メStopモ command to use the same mechanism that the Finder uses when the user presses the Command, Option, and Escape keys. THIS OPTION SHOULD BE USED WITH CAUTION, it will not allow the application to save documents or other information.
  188.  
  189. Double click action. This allows the user to change what occurs on a double click in the main window list. The user can choose from メInformationモ, メStopモ and メBring Forwardモ.
  190.  
  191. Show about box at startup. I think the user should view the about box at least once and acknowledge all the great people who helped me. Once the user is tired of seeing the little dog running back and forth, they can check this box to stop showing the about box up at startup.
  192.  
  193. List font. This allows the user to select with which font they want the list shown.
  194.  
  195. List font size. And the size of the font in the list.
  196.  
  197. 7. Why Another Process Manager Application?
  198.  
  199. Well, to be honest, there was little reason other than this is a learning experience. There are lots of these apps out there: ProcDoggie, Process Watcher, etc. They all do the same thingムlook at the list of processes using Process Manager calls. YAPI isnユt any different from all the others except for a few features and that it is _my_ application. 
  200.  
  201. Iユve been a Mac programmer since 1987, but I gave it up in 1994 to go over to the Dark Side (hey, give me a break, they threw lots of money at me). While I was cavorting with the demons, imps, and other minions from the Evil Empire, I missed out on PowerPC, UPPユs, CFM, and a lot of cool, new technologies from Apple.
  202.  
  203. So, when I signed on with Metrowerks this year to work on the x86 stuff, I thought that I should also bring myself up to speed on the new Mac technologies so that I can understand the code base. Iユve been working on some PowerPlant widgets and so when a friend asked me a question about killing a background app, I decided that would be the task that I would roll some of my widgets into. This app will become the メkitchen sinkモ that I throw code into as time goes by.
  204.  
  205. 8. Design Decisions (or not).
  206.  
  207. YAPI was written in C++ using the Codewarrior 10 compiler and PowerPlant. Screens designed in Constructor 2.3, resources edited with ResEdit, and pictures drawn/editted with Canvas.
  208.  
  209. I wrote this application using the obvious name of Process Watcher. I was just about done with it when Marcus said (using an Australian accent), メProcess Watcher is already taken.モ メWhat!モ said I, メdoes it do?モ メUmmm. Pretty much everything yours doesモ. I looked at Process Watcher, a nicely written application by Hugues Marty (hugues@isoftfr.isoft.fr), that does a lot more than my application. While I used two ideas from Process Watcher after I saw it, the desktop icons in the info windows and the red checks by the mode flags, the rest of the look and feel was my own design. 
  210.  
  211. After seeing Process Watcher, I decided to call my application YAPI and I looked around for a chihuahua icon (my neighbors have two yappy chihuahuas, Iユd really like to strangle them. The dogs that is, the people are nice, except for the fact that they have chihuahuas).
  212.  
  213. I took the icon and the animated sequence off of a web page, <http://www.3lbdogs.com/index.html> called the Chihuahua Kingdom. I donユt think they are the author, since Iユve seen the frames elsewhere, but thatユs where I found it, so they get the attribution. Itユs an odd page about chihuahuas and the people who live with them. Check it out.
  214.  
  215. 9. Features.
  216.  
  217. YAPI uses these features and technologies. This section will grow since YAPI is the blender that I intend to throw every new technology into.
  218.  
  219. Internet Config. Clicking on the URL's in the about box and the icons in the main window will launch the associated helper applications to send me email or show my web page.
  220.  
  221. Hints. Hints is a PowePlant attachment that I wrote that may or may not become part of the core PowerPlant. It is based on メToolTipsモ under Windows. It is easier to set up and use than Balloon help and is very configurable.
  222.  
  223. 10. Future features.
  224.  
  225. More Apple Events. I support the required events and I even have a few custom events in the application, but I donユt have 'aete' resources yet, so they arenユt useful by AppleScript (yes, メStopモ is Apple Eventユed, but Iユm not publishing the interface yet).
  226.  
  227. Grayscale Appearance. I dunno. I had some of the grayscale stuff in here at the start, but with all the hullaballoo regarding CW10, I took it out. All except the little disclosure triangle in the process information window. When everyone decides what they want their grays to look like, I may put it back.
  228.  
  229. More Configurable items. Color of text. Color of critical functions. Display of data in information windows.
  230.  
  231. Feedback from users. Should I really allow idiots a loaded gun in the house (i.e. the Kill options)?
  232.  
  233. Use IC to store preferences.
  234.  
  235. Allow user to view process info however they choose.
  236.  
  237. Thread Manager support.
  238.  
  239. ASyncSound. A class that Iユm working on that allows asynchronous sound play from 'snd ' resources and sound files by simply instantiating and object on the heap and passing it some constructor variables.
  240.  
  241. 11. Known Bugs.
  242.  
  243. ・ In B/W mode, the desktop icons donユt use the correct icon mode if no 'ICN#' exists for an app.
  244.  
  245. 12. Legalese, etc.
  246.  
  247. YAPI is Copyright, 1996 Eric H. Cloninger. All rights reserved. 
  248.  
  249. YAPI is provided, free of charge, with no warranties, expressed or implied. I will allow it to be placed on sampler and for-charge distributions provided that this document accompany the application.
  250.  
  251. If you have suggestions for future releases, questions, bug reports, or comments send them toノ
  252.  
  253. <mailto:ericc@pobox.com> (permanent email alias)
  254. <mailto:ericc@metrowerks.com> (current employment)
  255.  
  256. Eric Cloninger, 25 October 1996
  257.